/*
 * 项目名称:    wms-app-xinpu
 * 创建人员:    DongPeng
 * 创建时间:    2023-02-28
 * copyright(c) 2022 无锡星智数服科技有限公司
 */
package org.jeecg.modules.dock.enums;

import lombok.AccessLevel;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.jeecg.modules.dock.constant.SystemConstants;

/**
 * SAP接口类型定义
 *
 * @author DongPeng
 * @version 1.0.0
 * @date 2023-02-28
 * @description 类描述
 */
@Getter
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
public enum SapInterfaceTypeEnum implements BaseEnum {

    STEEL_BATCH_CALL("A801", "钢卷批次特性调用", SystemConstants.WMS, SystemConstants.SAP),
    MAIN_DATA("A802", "主数据接口", SystemConstants.WMS, SystemConstants.SAP),
    MATERIAL_UB_SEND("A803", "原卷UB单发货接口", SystemConstants.SAP, SystemConstants.WMS),
    MATERIAL_UB_RECEIVE("A804", "原卷UB单收货接口", SystemConstants.WMS, SystemConstants.SAP),
    OUT_PURCHASE_ORDER_MAIN_DATA("A805", "外购采购订单主数据接口", SystemConstants.SAP, SystemConstants.WMS),
    OUT_RECEIVE_SUBSIDIARY("A806", "外购收货接口（辅材）", SystemConstants.WMS, SystemConstants.SAP),
    OUT_RECEIVE_PRODUCT_AND_MATERIAL("A807", "外购收货接口（成品/原卷）", SystemConstants.WMS, SystemConstants.SAP),
    SALE_OUTBOUND_ORDER("A808", "销售出库单接口", SystemConstants.SAP, SystemConstants.WMS),
    SALE_OUTBOUND_POST("A809", "销售出库过账接口", SystemConstants.WMS, SystemConstants.SAP),
    PRODUCT_UB_SEND("A810", "成品UB单发货接口", SystemConstants.SAP, SystemConstants.WMS),
    PRODUCT_UB_RECEIVE("A811", "成品UB单收货接口", SystemConstants.SAP, SystemConstants.WMS),
    STRUCT_AND_CLIPS_UB_SEND("A812", "结构件/夹件UB单发货接口", SystemConstants.SAP, SystemConstants.WMS),
    STRUCT_AND_CLIPS_UB_RECEIVE("A813", "结构件/夹件UB单收货接口", SystemConstants.WMS, SystemConstants.SAP),
    RD_ORDER_MAIN_DATA("A814", "研发订单主数据接口", SystemConstants.SAP, SystemConstants.WMS),
    RD_RECEIPT("A815", "研发领用接口", SystemConstants.WMS, SystemConstants.SAP),
    SUBSIDIARY_OUTBOUND("A816", "辅材出库接口", SystemConstants.WMS, SystemConstants.SAP),
    SERACH_SALE_ORDER_PRINT("A817", "查询销售出库单打印接口", SystemConstants.WMS, SystemConstants.SAP),
    // 对于大力神等供应商加工
    SUBCONTRACT_OUTBOUND("A818", "委外加工入库接口", SystemConstants.WMS, SystemConstants.SAP),
    MATERIAL_BATCH_PECULIARITY("A819", "物料批次特性查询", SystemConstants.WMS, SystemConstants.SAP),
    // WMS调拨完成后，SAP创建UB单调拨
    BAR_MATERIAL_ALLOCATION("A820", "条料调拨接口", SystemConstants.WMS, SystemConstants.SAP),
    NICKING_TRANSFER_SENDING("A821", "刻痕调拨发送接口", SystemConstants.WMS, SystemConstants.SAP),
    NICKING_TRANSFER_BACK("A822", "刻痕调拨返回接口", SystemConstants.WMS, SystemConstants.SAP),
    PAPER_PURCHASE_CREATE("A823", "纸筒采购订单创建接口", SystemConstants.WMS, SystemConstants.SAP),
    INVENTORY_COUNT_ADJUSTMENT("A824", "库存盘点调整接口", SystemConstants.WMS, SystemConstants.SAP),
    PALLET("A825", "栈板接口", SystemConstants.WMS, SystemConstants.SAP),
    CREATE_BAR_MATERIAL_PRODUCTION_ORDER("A826", "条料调拨生产订单创建接口", SystemConstants.WMS, SystemConstants.SAP),
    INVENTORY_UPDATE("A827", "库存更新接口", SystemConstants.WMS, SystemConstants.SAP),
    //作废接口
    PURCHASEED_RAW_PRODUCT_WAREHOUSING("A828", "外购原卷/成品入库接口", SystemConstants.SAP, SystemConstants.WMS),
    PURCHASEED_RAW_PRODUCT_WAREHOUSING_NEW("A829", "外购原卷/成品入库接口", SystemConstants.SAP, SystemConstants.WMS),
    CUSTOMER_SUPPLIED_MATERIAL_SYNC("A830", "客供料同步接口", SystemConstants.SAP, SystemConstants.WMS),
    CUSTOMER_SUPPLIED_MATERIAL_STORED("A831", "客供料收货接口", SystemConstants.SAP, SystemConstants.WMS),
    //批次库存查询接口
    BATCH_STOCK_QUERY("A833", "批次库存查询接口", SystemConstants.WMS, SystemConstants.SAP),
    PURCHASING_IRON_STORAGE("A834", "生产订单手工入库推送接口", SystemConstants.SAP, SystemConstants.WMS),
    ;

    private final String code;
    private final String remark;

    /**
     * 来源系统
     */
    private final String source;
    /**
     * 目标系统
     */
    private final String target;

    @Override
    public String getCode() {
        return code;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public String getEnumName() {
        return "SAP接口定义";
    }
}
